﻿using EBA.Framework;
using EBA.WindowsServices;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Collections.Generic;
using System.ComponentModel.Composition;
using System.Linq;
using System.Text;

namespace EBA.Tests.WindowsServices
{
    [TestClass]
    public class WindowsServiceHostingTest
    {
       // [TestMethod]
        public void test_get_service_output()
        {
            using (var config = ConfigHelper.Create())
            {
                using (var hosting = new WindowsServiceHosting(config.FileName))
                {
                  
                    
                }
            }
        }

        [Export("servicehubtest_test_get_service_instance", typeof(IWindowsService))]
        public class servicehubtest_test_get_service_instance : IWindowsService
        {
            public void Start()
            {
                //throw new NotImplementedException();
            }

            public void Stop()
            {
                //throw new NotImplementedException();
            }

            public void Restart()
            {
                //throw new NotImplementedException();
            }

            public IWindowsServiceOutput Output
            {
                get;
                set;
            }

            public string StartupPath
            {
                get;
                set;
            }

            public string Name
            {
                get;
                set;
            }

            public Version Version
            {
                get;
                set;
            }

            public IBundleContext BundleContext
            {
                get;
                set;
            }
          

            public string Id
            {
                get { return "servicehubtest_test_get_service_instance"; }
            }

            public string Description
            {
                get { throw new NotImplementedException(); }
            }


            public BundleState State
            {
                get { throw new NotImplementedException(); }
            }
        }
    }
}
